package com.cskaoyan.javase.basic._9control;

/**
 * break
 * 概述：
 * break意为"打断，中断"，是常用的循环控制关键字。
 *
 * 使用场景：
 * break并不仅仅能用在循环中，它在switch中也可以使用
 * break就有了两个使用场景：
 *      1.switch语句中某个case分支，用于结束整个switch。
 *      2.循环语句中。
 * 注意：除开上面两种语境不能使用break，编译不通过
 *
 * 语义/作用：
 * 针对break的使用场景不同，作用也是不同的：
 *      1.在switch中使用，表示结束当前switch语句。
 *      2.在循环中使用，表示结束当前循环。
 *  注意：若有嵌套循环，表示结束当前层次的循环，和外层没有关系
 *
 * @since 10:43
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        // for循环是最常用的循环,快捷键fori
        for (int i = 0; i < 5; i++) {
            if (i == 3) {
                break;
            }
            System.out.println("今天中午吃🍉!");
        }
        System.out.println("-----------------");
        // 循环的控制变量,建议命名为i,j,k
        /*
            外层for执行一次,内层for就要执行五次,外层for一共执行6次
            内层for执行五次,就打印五个井号,这五个井号在同一行
            外层for执行六次,没执行一次,就换行一次
            所以图案是:
                六行五列的"#"长方形
         */
        label1:
        for (int i = 0; i < 6; i++) {
            label2:
            for (int j = 0; j < 5; j++) {
                if (i == 3) {
                    break label1;
                }
                System.out.print("#");
            }
            System.out.println();
        }
    }
}
